package com.platform.common.base;

import java.io.Serializable;

/**
 * 分页Model
 * 
 * @author 魏小磊 2015-03-11
 *
 */
public class PageModel<T> implements Serializable {

	private static final long serialVersionUID = 1L;

	private int total;// 记录总数

	private int pageNo = 1;// 当前页

	private int pageSize = 5;// 每一页记录数

	private int begin;// 开始位置

	private int end; // 结束位置

	/* 第一页 */
	public int getTopPageNo() {
		return 1;
	}

	/* 上一页 */
	public int getPreviousPageNo() {
		if (pageNo <= 1) {
			return 1;
		}
		return pageNo - 1;
	}

	/* 下一页 */
	public int getNextPageNo() {
		if (pageNo >= getTotalPages()) {
			return getTotalPages() == 0 ? 1 : getTotalPages();
		}
		return pageNo + 1;
	}

	/* 未页 */
	public int getBottonPageNo() {
		return getTotalPages() == 0 ? 1 : getTotalPages();
	}

	/* 总页数 */
	public int getTotalPages() {
		return (total + pageSize - 1) / pageSize;
	}

	/* 开始位置 */
	public int getBegin() {
		return (pageNo - 1) * pageSize;
	}

	/* 结束位置 */
	public int getEnd() {
		return pageNo * pageSize;
	}

	/** get() set()方法 */
	public int getTotal() {
		return total;
	}

	public void setTotal(int total) {
		this.total = total;
	}

	public int getPageNo() {
		return pageNo;
	}

	public void setPageNo(int pageNo) {
		this.pageNo = pageNo;
	}

	public int getPageSize() {
		return pageSize;
	}

	public void setPageSize(int pageSize) {
		this.pageSize = pageSize;
	}

	public void setBegin(int begin) {
		this.begin = begin;
	}

	public void setEnd(int end) {
		this.end = end;
	}

}
